Within large business enterprises, management of business processes is becoming a more significant issue as companies vie to improve efficiency, reduce costs, increase profits and gain more flexible and dynamic infrastructures. Business processes are a part of the day-to-day operations and services of any corporation. For example, a business process may include applying for a home loan (e.g. loan origination process), starting a mobile phone service (account initiation process), hiring a new employee (employee on-boarding process), building a new jet engine (parts and assembly process), as well as countless other processes performed by enterprises and organizations in order to accomplish specific goals.
Processes can range from very simple to highly complex and sophisticated, involving numerous decisions, tasks and activities. In this context, a business process can be thought of as a series of steps (tasks) that are executed in a particular order or path in order to achieve an objective in an organization. A business process can be visualized as a flowchart of a sequence of activities. Business processes often change over time and are useful for analyzing and optimizing the business model of a particular organization.
Business Process Model and Notation (BPMN) has been developed as a graphical representation of business processes in a business process model (formerly known as Business Process Modeling Notation). BPMN is a public standard maintained by Object Management Group, Inc. (Needham, Mass.) for business process modeling which provides a uniform graphical notation for specifying business process in a business process diagram. The primary goal of BPMN is to provide a standard notation readily understandable by all business users. BPMN supports business process management, for both technical users and business users, by providing a notation that is intuitive to business users, yet able to represent complex process semantics. The shapes, the symbols (also referred to as markers), the borders, the placement of the BPMN diagram elements, as well as their properties have well defined meanings and have to be interpreted in the same manner by all tools.
The BPMN specification maps the graphics of the notation to the underlying constructs of execution languages, for example, Business Process Execution Language (BPEL). Business Process Execution Language (BPEL) is a text-based (XML) executable language for representing business processes. It is particularly useful to define business processes that use Web Services to interact with other entities. BPEL can be used as a standard executable orchestration language to specify interactions with Web Services. The BPEL processes are represented in extensible markup language (XML) and these processes orchestrate synchronous and asynchronous services into end-to-end flows.
Even with the popularity of BPMN and other similar systems, there exists a multitude of shortcomings and other needs in this area of technology. For example, non-executable Business Process Modeling languages, such as BPMN, lack the precise semantics that are necessary to automatically validate, simulate, and execute business processes.